Desarrollo de números públicos de Wechat: el tratamiento de expresiones ordinarias y expresiones emoji. | 您所在的位置:网站首页 › span"/jrbac/assets/image/emoji/wechat/jiong.png"/span › Desarrollo de números públicos de Wechat: el tratamiento de expresiones ordinarias y expresiones emoji. |
A medida que se usa la expresión, en el desarrollo de Wechat, los desarrolladores deben considerar el tratamiento de las expresiones. La expresión en Wechat se puede dividir aproximadamente en tres categorías. La primera categoría es una colección de expresiones, como esta. Esta expresión se envía desde el extremo WeChat al servidor. Tales expresiones no pueden ser procesadas. Otra categoría es la expresión de Wechat. Este tipo de expresión es el símbolo, como la primera expresión de la sonrisa, es este símbolo / :) La última categoría es Emoji Expressions, y las expresiones Emoji son invisibles para codificar en Java, y se ve como espacio. El primer tipo de expresión no se puede manejar, solo se puede descartar, y el WeChat no puede enviar texto y expresión al enviar una expresión de primera clase, y solo puede enviar una expresión, por lo que no es grande para los negocios. El segundo tipo de expresión y el tercer tipo de expresión se pueden clasificar como la misma categoría, pero la tercera categoría que no podemos verla. Una vez que lo codas, puedes verlo. La idea de la expresión de procesamiento es hacer una tabla de codificación. Para Emoji invisible puede distinguir entre Unicode. Referencia de la tabla de control Unicode de Emoji iOS viene con un icono de expresión, se puede utilizar con caracteres esenciales Se ha organizado el segundo tipo de expresión. referencia Wechat predeterminado código de emblema y paquetes de imágenes Falta de varias expresiones. A la actual, Wechat viene con 99 expresiones (21 de marzo de 2017),Wechat predeterminado código de emblema y paquetes de imágenesTodavía hay nueve expresiones en el medio. Sin embargo, no hay nueve expresiones en la versión web Wechat. Tampoco encontré el archivo de recursos de la expresión. Pasé la izquierda e sorprendí las 9 expresiones autónomas restantes. También espero que la dirección de descarga del paquete de expresión oficial de Wechat. Diciendo el archivo de recursos. Expresión emojiWechat predeterminado código de emblema y paquetes de imágenesParte de la expresión de Emoji se ha dado a la correspondencia. Es completamente actividad física, y se agregarán las expresiones emoji restantes. Una captura de pantalla de algunas expresiones emoji, que pueden ser diferentes de las vistas de Unicode. Expresión perdida # 9 expresiones[] =![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 9 emoticones Descargar dirección emoji¿Cómo juzgo lo que Emoji es el texto? Aquí se proporciona una clase de herramientas, y la clase de herramientas se convierte en la codificación Unicode, que se puede reemplazar con una imagen o filtrarla con un espacio. package com.jrbac.util;import java.util.Formatter;import java.util.HashMap;import java.util.Map;import java.util.regex.Matcher;import java.util.regex.Pattern;public class EmojiUtil { / ** * Unicode * * mostrando caracteres invisibles @param input * @return */ public static String escapeUnicode(String input) { StringBuilder sb = new StringBuilder(input.length()); @SuppressWarnings("resource") Formatter format = new Formatter(sb); for (char c : input.toCharArray()) { if (c < 128) { sb.append(c); } else { format.format("\\u%04x", (int) c); } } return sb.toString(); } / ** * Reemplace Emoji a Unicode * * @param source * @return */ public static String filterEmoji(String source) { if (source != null) { Pattern emoji = Pattern.compile("[\ue000-\uefff]", Pattern.CASE_INSENSITIVE); Matcher emojiMatcher = emoji.matcher(source); Map tmpMap = new HashMap(); while (emojiMatcher.find()) { // System.out.println(escapeUnicode(emojiMatcher.group())); // System.out.println(emojiMatcher.start()); String key = emojiMatcher.group(); String value = escapeUnicode(emojiMatcher.group()); //System.out.println("key:" + key); //System.out.println("value:" + value); tmpMap.put(key, value); // source = // emojiMatcher.replaceAll(escapeUnicode(emojiMatcher.group())); } if (!tmpMap.isEmpty()) { for (Map.Entry entry : tmpMap.entrySet()) { String key = entry.getKey().toString(); String value = entry.getValue().toString(); source = source.replace(key, value); } } } return source; }}123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263prueba package com.jrbac.util;import org.junit.Test;public class EmojiTest { @Test public void testEmoji() { String source = "Expresión básica / :) Emoji Apple emoji Pan "; String unicode = EmojiUtil.escapeUnicode(source); System.out.println("Cadena original:"+source); System.out.println("Unicode que codifica:"+unicode); String replace = EmojiUtil.filterEmoji(source); System.out.println("Reemplace la cadena:"+replace); }}12345678910111213141516171819efecto Wechat predeterminado código de emblema y paquetes de imágenes iOS viene con un icono de expresión, se puede utilizar con caracteres esenciales |
CopyRight 2018-2019 实验室设备网 版权所有 |